home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / FSM.idl < prev    next >
Text File  |  1996-05-01  |  7KB  |  258 lines

  1. /*
  2.      File:        FSM.idl
  3.  
  4.      Contains:    HFS External File System Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __FSM_IDL__
  19. #define __FSM_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __FILES_IDL__
  25. #include <Files.idl>
  26. #endif
  27.  
  28. #ifdef __SOMIDL__
  29.  
  30. #if FOR_SYSTEM7_ONLY
  31. #if OLDROUTINELOCATIONS
  32. /*
  33.  * gestaltFSMVersion should be in Gestalt.h
  34.  *
  35.  * VCBPtr, new volume mount flags, and VolumeMountInfoHeader
  36.  * should be in Files.h
  37. */
  38. /*    The new volume mount flags */
  39. /*
  40.  * additional volume mount info record
  41. */
  42. typedef SOMLargeStruct            VolumeMountInfoHeader;        /* Derived from a struct of 8 bytes in size */
  43.  
  44. typedef OpaquePtr                VolumeMountInfoHeaderPtr;    /* Substituted OpaquePtr for ``VolumeMountInfoHeader*'' */
  45.  
  46. typedef OpaquePtr                VCBPtr;                        /* Substituted OpaquePtr for ``VCB*'' */
  47.  
  48. #endif
  49. /*
  50.  * Miscellaneous file system values not in Files.h
  51. */
  52. /*
  53.  * HFSCIProc selectCode values
  54.  * Note: The trap attribute bits (the HFS bit and the asynchronous bit)
  55.  * may be set in these selectCode values.
  56. */
  57. /*
  58.  * UTDetermineVol status values
  59. */
  60. /*
  61.  * UTGetBlock options
  62. */
  63. /*
  64.  * UTReleaseBlock options
  65. */
  66. /*
  67.  * UTFlushCache options
  68. */
  69. /*
  70.  * UTCacheReadIP and UTCacheWriteIP cacheOption
  71. */
  72. /*
  73.  * Cache routine internal error codes
  74. */
  75. /*
  76.  * FCBRec.fcbFlags bits
  77. */
  78. /*
  79.  * ExtFileProc options
  80. */
  81. /*
  82.  *    HFS Component Interface constants
  83. */
  84. /*
  85.  * compInterfMask bits specific to HFS component
  86. */
  87. /*
  88.  *    Disk Initialization Component Interface constants
  89. */
  90. /*
  91.  * compInterfMask bits specific to Disk Initialization component
  92. */
  93. /*
  94.  * Disk Initialization Component Function selectors
  95. */
  96. /*
  97.  * Constants used in the DICIEvaluateSizeRec and FormatListRec
  98. */
  99. /*
  100.  * DICIGetFormatStringRec.stringKind format strings
  101. */
  102. /*
  103.  * Error codes returned by Disk Sparing
  104. */
  105. /*
  106.  *    File System Manager constants
  107. */
  108. /*
  109.  * Miscellaneous constants used by FSM
  110. */
  111. /*
  112.  * compInterfMask bits common to all FSM components
  113. */
  114. /*
  115.  * Selectors for GetFSInfo
  116. */
  117. /*
  118.  * InformFSM messages
  119. */
  120. /*
  121.  * Messages passed to the fileSystemCommProc
  122. */
  123. /*
  124.  * Error codes from FSM functions
  125. */
  126. /*
  127.  *    HFS Utility routine records
  128. */
  129. /*
  130.  * record used by UTGetPathComponentName
  131. */
  132. typedef SOMLargeStruct            ParsePathRec;                /* Derived from a struct of 10 bytes in size */
  133.  
  134. typedef OpaquePtr                ParsePathRecPtr;            /* Substituted OpaquePtr for ``ParsePathRec*'' */
  135.  
  136. typedef SOMLargeStruct            WDCBRec;                    /* Derived from a struct of 16 bytes in size */
  137.  
  138. typedef OpaquePtr                WDCBRecPtr;                    /* Substituted OpaquePtr for ``WDCBRec*'' */
  139.  
  140. typedef SOMLargeStruct            FCBRec;                        /* Derived from a struct of 94 bytes in size */
  141.  
  142. typedef OpaquePtr                FCBRecPtr;                    /* Substituted OpaquePtr for ``FCBRec*'' */
  143.  
  144. /*
  145.  *    HFS Component Interface records
  146. */
  147. typedef OpaquePtr Lg2PhysProcPtr;
  148. typedef OpaquePtr Lg2PhysUPP;
  149. typedef OpaquePtr HFSCIProcPtr;
  150. typedef OpaquePtr HFSCIUPP;
  151. typedef SOMLargeStruct            HFSCIRec;                    /* Derived from a struct of 40 bytes in size */
  152.  
  153. typedef OpaquePtr                HFSCIRecPtr;                /* Substituted OpaquePtr for ``HFSCIRec*'' */
  154.  
  155. /*
  156.  *    Disk Initialization Component Interface records
  157. */
  158. typedef OpaquePtr DICIProcPtr;
  159. typedef OpaquePtr DICIUPP;
  160. typedef SOMLargeStruct            DICIRec;                    /* Derived from a struct of 24 bytes in size */
  161.  
  162. typedef OpaquePtr                DICIRecPtr;                    /* Substituted OpaquePtr for ``DICIRec*'' */
  163.  
  164. /*
  165.  * FormatListRec as returned by the .Sony disk driver's
  166.  * Return Format List status call (csCode = 6).
  167.  * If the status call to get this list for a drive is not
  168.  * implemented by the driver, then a list with one entry
  169.  * is contructed from the drive queue element for the drive.
  170. */
  171. typedef SOMLargeStruct            FormatListRec;                /* Derived from a struct of 8 bytes in size */
  172.  
  173. typedef OpaquePtr                FormatListRecPtr;            /* Substituted OpaquePtr for ``FormatListRec*'' */
  174.  
  175. /*
  176.  * SizeListRec built from FormatListRecs as described above.
  177. */
  178. typedef SOMLargeStruct            SizeListRec;                /* Derived from a struct of 10 bytes in size */
  179.  
  180. typedef OpaquePtr                SizeListRecPtr;                /* Substituted OpaquePtr for ``SizeListRec*'' */
  181.  
  182. /*
  183.  * paramBlock for the diCIEvaluateSize call
  184. */
  185. typedef SOMLargeStruct            DICIEvaluateSizeRec;        /* Derived from a struct of 12 bytes in size */
  186.  
  187. typedef OpaquePtr                DICIEvaluateSizeRecPtr;        /* Substituted OpaquePtr for ``DICIEvaluateSizeRec*'' */
  188.  
  189. /*
  190.  * paramBlock for the diCIExtendedZero call
  191. */
  192. typedef SOMLargeStruct            DICIExtendedZeroRec;        /* Derived from a struct of 28 bytes in size */
  193.  
  194. typedef OpaquePtr                DICIExtendedZeroRecPtr;        /* Substituted OpaquePtr for ``DICIExtendedZeroRec*'' */
  195.  
  196. /*
  197.  * paramBlock for the diCIValidateVolName call
  198. */
  199. typedef SOMLargeStruct            DICIValidateVolNameRec;        /* Derived from a struct of 10 bytes in size */
  200.  
  201. typedef OpaquePtr                DICIValidateVolNameRecPtr;    /* Substituted OpaquePtr for ``DICIValidateVolNameRec*'' */
  202.  
  203. /*
  204.  * paramBlock for the diCIGetVolTypeInfo call
  205. */
  206. typedef SOMLargeStruct            DICIGetVolTypeInfoRec;        /* Derived from a struct of 136 bytes in size */
  207.  
  208. typedef OpaquePtr                DICIGetVolTypeInfoRecPtr;    /* Substituted OpaquePtr for ``DICIGetVolTypeInfoRec*'' */
  209.  
  210. /*
  211.  * paramBlock for the diCIGetFormatString call
  212. */
  213. typedef SOMLargeStruct            DICIGetFormatStringRec;        /* Derived from a struct of 266 bytes in size */
  214.  
  215. typedef OpaquePtr                DICIGetFormatStringRecPtr;    /* Substituted OpaquePtr for ``DICIGetFormatStringRec*'' */
  216.  
  217. /*
  218.  * paramBlock for the diCIGetExtendedFormatParams call
  219. */
  220. typedef SOMLargeStruct            DICIGetExtendedFormatRec;    /* Derived from a struct of 18 bytes in size */
  221.  
  222. typedef OpaquePtr                DICIGetExtendedFormatRecPtr; /* Substituted OpaquePtr for ``DICIGetExtendedFormatRec*'' */
  223.  
  224. /*
  225.  *    File System Manager records
  226. */
  227. typedef OpaquePtr FSDCommProcPtr;
  228. typedef OpaquePtr FSDCommUPP;
  229.  
  230.  
  231. typedef SOMLargeStruct            FSDRec;                        /* Derived from a struct of 196 bytes in size */
  232.  
  233. typedef OpaquePtr                FSDRecPtr;                    /* Substituted OpaquePtr for ``FSDRec*'' */
  234.  
  235. typedef SOMLargeStruct            FSMGetIconInfoRec;            /* Derived from a struct of 512 bytes in size */
  236.  
  237. typedef OpaquePtr                FSMGetIconInfoRecPtr;        /* Substituted OpaquePtr for ``FSMGetIconInfoRec*'' */
  238.  
  239. /*
  240.  * paramBlock for ffsGetIconMessage and fsmGetFSIconMessage
  241. */
  242. typedef SOMLargeStruct            FSMGetIconRec;                /* Derived from a struct of 28 bytes in size */
  243.  
  244. typedef OpaquePtr                FSMGetIconRecPtr;            /* Substituted OpaquePtr for ``FSMGetIconRec*'' */
  245.  
  246. /*
  247.  *    HFS Utility routine prototypes
  248. */
  249. /*
  250.  *    File System Manager call prototypes
  251. */
  252. #endif
  253.  
  254. #endif /* __SOMIDL__ */
  255.  
  256. #endif /* __FSM_IDL__ */
  257.  
  258.